package com.hhkj.api.bank.service.biz;

import com.hhkj.admin.bank.model.res.BankRes;

/**
 * ApiBankService
 *
 * @author HHKJ-SERVER-ZJ
 * @since 2023/5/25 11:24
 */
public interface ApiBankBizService
{

    /**
     * 清除对应题库的缓存
     *
     * @param courseParentId   类型id
     * @param courseBankTypeId 题库类型id
     */
    void clearBankCache(Long courseParentId, Long courseBankTypeId);

    /**
     * 清除对应题库的缓存
     *
     * @param courseParentId   类型id
     * @param courseId         科目id
     * @param courseBankTypeId 题库类型id
     */
    void clearBankCache(Long courseParentId, Long courseId, Long courseBankTypeId);

    /**
     * 题库信息 包括题目列表
     *
     * @param typeCode 类型编码 练习题库:practise、测试题库:test
     * @return 题库信息
     */
    BankRes getPublishBank(String typeCode);

    /**
     * 根据id获取题库信息
     *
     * @param id id
     * @return 题库信息
     */
    BankRes getBankById(Long id);

    /**
     * 根据id获取题库信息
     *
     * @param parentId 上级题库id
     * @return 题库信息
     */
    BankRes getBankByParentIdAndTypeCode(Long parentId, String typeCode);

}
